package Day_0220.Redis;

/**
 * @author zxc
 * @date 2023/02/20 12:34
 **/
public class Production_Environment_Deploy_Redis {
    public static void main(String[] args) {
        /**
         * 生产环境中，如何部署Redis
         * ===》
         * 1.redis cluster
         * （Redis采用主从架构模式，主节点负责处理数据写入操作 && 从节点负责处理数据读取操作）
         * （1）10 台机器，5 台机器部署了 redis 主实例，另外 5 台机器部署了 redis 的从实例，
         * （2）每个主实例挂了一个从实例，5 个节点对外提供读写服务，
         * （3）每个节点的读写高峰 qps 可能可以达到每秒 5万，5 台机器最多是 25 万读写请求/s。
         *
         * 2.机器是什么配置？
         * （1）32G 内存+ 8 核 CPU + 1T 磁盘，但是分配给 redis 进程的是 10g 内存，
         * （2）一般线上生产环境，redis 的内存尽量不要超过 10g，超过 10g 可能会有问题。
         * ===》5 台机器对外提供读写，一共有 50g 内存。
         *
         * 3.因为每个主实例都挂了一个从实例，所以是高可用的，
         * ===》
         * 任何一个主实例宕机，都会自动故障迁移，redis从实例会自动变成主实例继续提供读写服务。
         * （1）Redis的主从架构模式，也可以是主节点提供读写服务，同时从节点作为备用节点，
         * （2）等到主节点故障后，在启用该主节点的从节点，来代替主节点来提供读写服务，保证Redis的高可用;
         * （3）问题：在于在主节点正常工作的情况下，从节点是被闲置的，导致Redis资源未被充分利用;
         *
         */
    }
}
